package com.shycloud.mido.member.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.shycloud.mido.common.core.util.R;
import com.shycloud.mido.member.api.entity.OnlineCourseSchedule;
import com.shycloud.mido.member.api.vo.OnlineCourseScheduleVO;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author Xiaoxing Yu
 * @date 2020/12/22 上午9:57
 **/
public interface OnlineCourseScheduleMapper extends BaseMapper<OnlineCourseSchedule> {

	List<OnlineCourseScheduleVO> selectScheduleMonthly(
			@Param(value = "year") Integer year,
			@Param(value = "month") String month,
			@Param(value = "teacherId") String teacherId,
			@Param(value = "studentId") String studentId);

	List<OnlineCourseScheduleVO> selectScheduleWeekly(
			@Param(value = "sundayDateStr") String sundayDateStr,
			@Param(value = "nextMondayDateStr") String nextMondayDateStr,
			@Param(value = "teacherId") String teacherId,
			@Param(value = "studentId") String studentId);

	List<OnlineCourseScheduleVO> selectByStartTime(@Param(value = "courseDate") String courseDate,
												   @Param(value = "startTime") String startTime,
												   @Param(value = "teacherId") String teacherId,
												   @Param(value = "studentId") String studentId,
												   @Param(value = "dayOfWeekIdx") Integer dayOfWeekIdx);

	List<OnlineCourseScheduleVO> selectSpecialRemindType(@Param(value = "teacherId") String teacherId);
}
